package com.example.servlet;

import com.alibaba.fastjson.JSONObject;
import com.example.bean.Messages;
import com.example.dao.MessagesDao;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.List;

//用户访问 /MessageListServlet 路径时，这个Servlet将被调用。
@WebServlet(name = "MessageListServlet", value = "/MessageListServlet")
public class MessageListServlet extends HttpServlet {
  //这是 HttpServlet 类中的一个方法，用于处理HTTP GET请求。
    public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException {
        request.setCharacterEncoding("utf-8");

        MessagesDao messagesDao = new MessagesDao();
        List<Messages> allMessage = messagesDao.getAllMessage();
        response.setContentType("application/json");//设置响应的内容类型为JSON。
        response.setCharacterEncoding("UTF-8");
        PrintWriter out = response.getWriter();//获取 PrintWriter 对象，用于向客户端发送响应数据。
        out.print(JSONObject.toJSON(allMessage));//将留言列表转换为JSON格式的字符串，并发送给客户端。

        out.flush();//确保所有数据都被发送到客户端。
    }
}
